package qj.gae;

import java.util.Arrays;
import java.util.List;

import qj.tool.build.BuildUtil;
import qj.tool.jna.KeyboardHandler;
import qj.util.funct.F2;

public class BlockKeys {
	public static void main(String[] args) {
		final List<Integer> blockeds = Arrays.asList(
				255,
				179,
				178,
				177,
				176,
				175,
				174,
				173,
				172,
				171
				);
		KeyboardHandler.mapAll(new F2<Integer, Boolean, Boolean>() {public Boolean e(Integer key, Boolean pressed) {
			if (blockeds.contains(key)) {
				return false;
			}
			
			return true;
		}});
	}
	
	public static class Build {
		public static void main(String[] args) {
			BuildUtil.buildApp(BlockKeys.class);
		}
	}
}

/*
xmodmap -e 'keycode 255 = NoSymbol'
xmodmap -e 'keycode 255 = NoSymbol'
xmodmap -e 'keycode 179 = NoSymbol'
xmodmap -e 'keycode 178 = NoSymbol'
xmodmap -e 'keycode 177 = NoSymbol'
xmodmap -e 'keycode 176 = NoSymbol'
xmodmap -e 'keycode 175 = NoSymbol'
xmodmap -e 'keycode 174 = NoSymbol'
xmodmap -e 'keycode 173 = NoSymbol'

255 Fri Nov 25 21:11:44 ICT 2011
179 Fri Nov 25 21:11:44 ICT 2011
178 Fri Nov 25 21:11:44 ICT 2011
177 Fri Nov 25 21:11:44 ICT 2011
176 Fri Nov 25 21:11:44 ICT 2011
173 Fri Nov 25 21:11:44 ICT 2011
174 Fri Nov 25 21:11:44 ICT 2011
174 Fri Nov 25 21:12:02 ICT 2011
179 Fri Nov 25 21:12:12 ICT 2011
67 Fri Nov 25 21:12:12 ICT 2011

175 true Fri Nov 25 21:16:55 ICT 2011
174 true Fri Nov 25 21:16:55 ICT 2011
179 false Fri Nov 25 21:16:57 ICT 2011
175 false Fri Nov 25 21:16:57 ICT 2011
174 false Fri Nov 25 21:16:57 ICT 2011
255 true Fri Nov 25 21:24:24 ICT 2011
179 true Fri Nov 25 21:24:24 ICT 2011
178 true Fri Nov 25 21:24:24 ICT 2011
177 true Fri Nov 25 21:24:24 ICT 2011
176 true Fri Nov 25 21:24:24 ICT 2011
179 false Fri Nov 25 21:24:28 ICT 2011
178 false Fri Nov 25 21:24:28 ICT 2011
177 false Fri Nov 25 21:24:28 ICT 2011
176 false Fri Nov 25 21:24:28 ICT 2011
255 true Fri Nov 25 21:25:26 ICT 2011
179 true Fri Nov 25 21:25:26 ICT 2011
175 false Fri Nov 25 21:25:46 ICT 2011
174 false Fri Nov 25 21:25:46 ICT 2011
255 true Fri Nov 25 21:28:14 ICT 2011
179 true Fri Nov 25 21:28:14 ICT 2011
179 false Fri Nov 25 21:28:24 ICT 2011
255 true Fri Nov 25 21:32:22 ICT 2011
179 true Fri Nov 25 21:32:22 ICT 2011
178 true Fri Nov 25 21:32:22 ICT 2011
177 true Fri Nov 25 21:32:22 ICT 2011
176 true Fri Nov 25 21:32:22 ICT 2011
173 true Fri Nov 25 21:32:22 ICT 2011
179 false Fri Nov 25 21:33:24 ICT 2011
178 false Fri Nov 25 21:33:24 ICT 2011
177 false Fri Nov 25 21:33:24 ICT 2011
176 false Fri Nov 25 21:33:24 ICT 2011
173 false Fri Nov 25 21:33:24 ICT 2011
255 true Fri Nov 25 21:33:30 ICT 2011
179 true Fri Nov 25 21:33:30 ICT 2011
178 true Fri Nov 25 21:33:30 ICT 2011
177 true Fri Nov 25 21:33:30 ICT 2011
175 false Fri Nov 25 21:33:47 ICT 2011
174 false Fri Nov 25 21:33:47 ICT 2011
255 true Fri Nov 25 21:34:36 ICT 2011
179 true Fri Nov 25 21:34:36 ICT 2011
178 true Fri Nov 25 21:34:36 ICT 2011
178 false Fri Nov 25 21:34:47 ICT 2011
179 false Fri Nov 25 21:34:53 ICT 2011
255 true Fri Nov 25 21:39:29 ICT 2011
179 true Fri Nov 25 21:39:29 ICT 2011
178 true Fri Nov 25 21:39:29 ICT 2011
177 true Fri Nov 25 21:39:29 ICT 2011
176 true Fri Nov 25 21:39:29 ICT 2011
173 true Fri Nov 25 21:39:29 ICT 2011
175 true Fri Nov 25 21:39:29 ICT 2011
255 false Fri Nov 25 21:40:49 ICT 2011
66 false Fri Nov 25 21:40:49 ICT 2011
174 true Fri Nov 25 21:40:49 ICT 2011
179 false Fri Nov 25 21:41:30 ICT 2011
178 false Fri Nov 25 21:41:30 ICT 2011
177 false Fri Nov 25 21:41:30 ICT 2011
174 false Fri Nov 25 21:41:30 ICT 2011
255 true Fri Nov 25 21:43:46 ICT 2011
179 true Fri Nov 25 21:43:46 ICT 2011
178 true Fri Nov 25 21:43:46 ICT 2011
177 true Fri Nov 25 21:43:46 ICT 2011
176 true Fri Nov 25 21:43:46 ICT 2011
179 false Fri Nov 25 21:44:51 ICT 2011
178 false Fri Nov 25 21:44:51 ICT 2011
177 false Fri Nov 25 21:44:51 ICT 2011
176 false Fri Nov 25 21:44:51 ICT 2011
255 true Fri Nov 25 21:45:50 ICT 2011
179 true Fri Nov 25 21:45:50 ICT 2011
178 true Fri Nov 25 21:45:50 ICT 2011
177 true Fri Nov 25 21:45:50 ICT 2011
179 false Fri Nov 25 21:47:21 ICT 2011
178 false Fri Nov 25 21:47:21 ICT 2011
177 false Fri Nov 25 21:47:21 ICT 2011
255 true Fri Nov 25 21:54:59 ICT 2011
179 true Fri Nov 25 21:54:59 ICT 2011
178 true Fri Nov 25 21:54:59 ICT 2011
177 true Fri Nov 25 21:54:59 ICT 2011
176 true Fri Nov 25 21:54:59 ICT 2011
173 true Fri Nov 25 21:54:59 ICT 2011
174 true Fri Nov 25 21:54:59 ICT 2011
175 true Fri Nov 25 21:55:49 ICT 2011
174 true Fri Nov 25 21:55:49 ICT 2011
177 false Fri Nov 25 21:56:00 ICT 2011
176 false Fri Nov 25 21:56:00 ICT 2011
173 false Fri Nov 25 21:56:00 ICT 2011
175 false Fri Nov 25 21:56:00 ICT 2011
174 false Fri Nov 25 21:56:00 ICT 2011
179 false Fri Nov 25 21:56:11 ICT 2011
178 false Fri Nov 25 21:56:11 ICT 2011
255 true Fri Nov 25 21:57:40 ICT 2011
179 true Fri Nov 25 21:57:40 ICT 2011
178 true Fri Nov 25 21:57:40 ICT 2011
177 true Fri Nov 25 21:57:40 ICT 2011
179 false Fri Nov 25 21:58:15 ICT 2011
178 false Fri Nov 25 21:58:15 ICT 2011
177 false Fri Nov 25 21:58:15 ICT 2011
255 true Fri Nov 25 21:59:14 ICT 2011
179 true Fri Nov 25 21:59:14 ICT 2011
178 true Fri Nov 25 21:59:14 ICT 2011
177 true Fri Nov 25 21:59:14 ICT 2011
176 true Fri Nov 25 21:59:14 ICT 2011
173 true Fri Nov 25 21:59:14 ICT 2011
175 true Fri Nov 25 21:59:14 ICT 2011
175 false Fri Nov 25 21:59:52 ICT 2011
174 false Fri Nov 25 21:59:52 ICT 2011
255 true Fri Nov 25 22:04:44 ICT 2011
179 true Fri Nov 25 22:04:44 ICT 2011
178 true Fri Nov 25 22:04:44 ICT 2011
177 true Fri Nov 25 22:04:44 ICT 2011
176 true Fri Nov 25 22:04:44 ICT 2011
173 true Fri Nov 25 22:04:44 ICT 2011
174 true Fri Nov 25 22:04:44 ICT 2011
179 false Fri Nov 25 22:07:17 ICT 2011
178 false Fri Nov 25 22:07:17 ICT 2011
177 false Fri Nov 25 22:07:17 ICT 2011
176 false Fri Nov 25 22:07:17 ICT 2011
174 false Fri Nov 25 22:07:17 ICT 2011
255 true Fri Nov 25 22:16:29 ICT 2011
179 true Fri Nov 25 22:16:29 ICT 2011
179 false Fri Nov 25 22:17:38 ICT 2011
255 true Fri Nov 25 22:23:35 ICT 2011
179 true Fri Nov 25 22:23:35 ICT 2011
178 true Fri Nov 25 22:23:35 ICT 2011
175 false Fri Nov 25 22:23:52 ICT 2011
174 false Fri Nov 25 22:23:52 ICT 2011
255 true Fri Nov 25 22:24:53 ICT 2011
179 true Fri Nov 25 22:24:53 ICT 2011
179 false Fri Nov 25 22:25:10 ICT 2011
255 true Fri Nov 25 22:28:56 ICT 2011
179 true Fri Nov 25 22:28:56 ICT 2011
178 true Fri Nov 25 22:28:56 ICT 2011
177 true Fri Nov 25 22:28:56 ICT 2011
176 true Fri Nov 25 22:30:14 ICT 2011
173 true Fri Nov 25 22:30:14 ICT 2011
174 true Fri Nov 25 22:31:22 ICT 2011
179 false Fri Nov 25 22:31:28 ICT 2011
178 false Fri Nov 25 22:31:28 ICT 2011
67 false Fri Nov 25 22:31:28 ICT 2011
255 true Fri Nov 25 22:34:09 ICT 2011
179 true Fri Nov 25 22:34:09 ICT 2011
178 true Fri Nov 25 22:34:09 ICT 2011
177 true Fri Nov 25 22:34:09 ICT 2011
176 true Fri Nov 25 22:34:09 ICT 2011
173 true Fri Nov 25 22:34:09 ICT 2011
174 true Fri Nov 25 22:34:09 ICT 2011
67 false Fri Nov 25 22:35:26 ICT 2011

*/